+
    3jc                     f  a  R[ tR0 t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^ RI	Ht ^ RI	Ht ^ RI	Ht ^ RI	Ht ^ RI	Ht ^ RIt^ R	IHt ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIH t  ^ RI!H"t" ^ RI!H#t# ^ RI$H%t% ^ RI$H&t& ^ RI'H(t( ^ RI'H)t) ^ RI*H+t+ ^ RI*H,t, ^ RI-H.t. ^ RI/H0t0 ^ RI1H2t2 ]Pf                  ! ]44      t5Rt6^t7] ^ k ^t8] ^k ^ t9] ^k R R lt:R  R! lt;]2! ],4      R" R# l4       t<]2! ](4      R$ R% l4       t=]2! ]4      R& R' l4       t>R\R( R) llt?]P                  ! R*R+R,R-R.R/R.R0R1R2./R37      tA]AP                  R.R+R47      R]R5 R6 ll4       tCR\R7 R8 lltD]AP                  R94      R^R: R; ll4       tF]AP                  R<R=7      R\R> R? ll4       tG]AP                  R@R=7      R\RA RB ll4       tH]AP                  RCR=7      R\RD RE ll4       tI]P                  ! RFR+RGR-R.R/R.R0R1R2./R37      tJ]JP                  RHR=7      RI RJ l4       tK]JP                  RKR=7      R_RL RM ll4       tLR`RN RO lltMRaRP RQ lltN]JP                  RRR.RS].! 4        2RT7      ! ]N4      tO]JP                  RUR.RV].! 4        2RT7      ! ]N4      tP]JP                  RWR.RX7      R\RY RZ ll4       tQR# )b    N)dedent)	Annotated)Any)Dict)List)Optional)Union)	HTTPError)JSONDecodeError)Confirm)Syntax)Table)__version__)login)logout)
BaseClient)AnacondaAuthSite)AnacondaAuthSitesConfig)fetch_org_features)get_orgs_with_env_logger)TokenExpiredError)UnknownSiteName)	TokenInfo)TokenNotFoundError)anaconda_config_path)console)register_error_handleru   [bold green]✔︎[/bold green]c                $    V ^8  d   QhR\         /# )   return)int)formats   "1lib/python3.14/site-packages/anaconda_auth/cli.py__annotate__r$   /   s      c     c                     \         P                  P                  4       '       d   \        P                  ! R RR.R7      p V '       d   \        4        R
# \        P                  ! \        R4      4       \        P                  ! \        \        R4      RRR7      4       \        P                  ! R	\        4        24       ^# )z Continue with interactive login?yn)choicesa  
                To configure your credentials you can run
                  [green]anaconda login --at anaconda.com[/green]

                or set your API key using the [green]ANACONDA_AUTH_API_KEY[/green] env var

                or set
                zl                        [plugin.auth]
                        api_key = "<api-key>"
                        tomlN)background_colorzin )sysstdoutisattyr   askr   r   printr   r   r   )do_logins    r#   _continue_with_loginr3   /   s    
zz;;ACQT:VGIMM  	 MM %)	 MMC 4 6789r%   c                (    V ^8  d   QhR\         RR/# )r   error_classifierr    N)str)r"   s   "r#   r$   r$   P   s      c d r%   c                 :    \         P                  ! R V  R24       R# )[bold][red]z9[/red][/bold]: Login is required to complete this action.N)r   r1   )r5   s   &r#   _login_required_messager9   P   s    MM
&''`ar%   c                0    V ^8  d   QhR\         R\        /# r   er    	Exceptionr!   )r"   s   "r#   r$   r$   W   s     " "i "C "r%   c                 T    \        V P                  P                  4       \        4       # N)r9   	__class____name__r3   r<   s   &r#   login_requiredrD   V   s    AKK001!!r%   c                0    V ^8  d   QhR\         R\        /# r;   r=   )r"   s   "r#   r$   r$   ]   s     " "Y "3 "r%   c                 r    \         P                  ! R V P                  P                   R24       \	        4       # )r8   z+[/red][/bold]: Your login token has expired)r   r1   rA   rB   r3   rC   s   &r#   token_expiredrG   \   s1    MM
akk**++VW  !!r%   c                0    V ^8  d   QhR\         R\        /# r;   )r
   r!   )r"   s   "r#   r$   r$   f   s      )  r%   c                     V P                   P                  4       P                  R / 4      P                  RR4      pVR8X  dQ   RV P                  P
                  9   d!   \        P                  ! R4       \        4       # \        R4       \        4       # \        P                  ! RV P                  P                   RV  24       ^#   \         d    Rp Li ; i)	errorcode auth_requiredAuthorizationz^[bold][red]InvalidAuthentication:[/red][/bold] Your provided API Key or login token is invalidAuthenticationMissingErrorr8   z:[/red][/bold] )responsejsongetr   requestheadersr   r1   r9   r3   rA   rB   )r<   
error_codes   & r#   
http_errorrV   e   s    ZZ__&**7B7;;FBG
 _$aii///MMp
 $%% $$@A#%%AKK$8$8#9LM  
s   :C CCc                >    V ^8  d   QhR\         \        ,          RR/# r   atr    N)r   r6   )r"   s   "r#   r$   r$   y   s     1 1x} 1 1r%   c                 @    V '       d   V \         P                  R &   R# R# )ANACONDA_DEFAULT_SITEN)osenvironrY   s   &r#   _override_default_siter_   y   s    	.0

*+ 
r%   authFz#Manage your Anaconda authenticationallow_extra_argsTignore_unknown_optionshelp_option_namesz--helpz-h)nameadd_completionhelpcontext_settings)invoke_without_commandno_args_is_helpc          (         V ^8  d   QhR\         P                  R\        \        \         P                  ! RR4      3,          R\        \
        \        ,          \         P                  ! RRRR	7      3,          R
\        \
        \        ,          \         P                  ! RRRRR	7      3,          R\        \
        \        ,          \         P                  ! RRR	7      3,          R\        \
        \        ,          \         P                  ! RRR	7      3,          R\        \
        \        ,          \         P                  ! RRRR	7      3,          R\        \
        \        ,          \         P                  ! RRR	7      3,          R\        \
        \        ,          \         P                  ! RRR	7      3,          R\        \
        \        ,          \         P                  ! RRRR	7      3,          R\        \
        \        ,          \         P                  ! RRR	7      3,          R\        \
        \        ,          \         P                  ! RR RR	7      3,          R!\        \
        \        ,          \         P                  ! R"R#RR	7      3,          R$\        \
        \        ,          \         P                  ! R%R&RR	7      3,          R'\        \
        \        ,          \         P                  ! R(R)RR	7      3,          R*\        \
        \        ,          \         P                  ! R+R,R-RR	7      3,          R.\        \
        \        \        ,          ,          \         P                  ! RR/R07      3,          R1R2/# )3r   ctxversionz-Vz	--versionrd   z-nz--nameThiddenorganizationz-oz--orgz--organizationstrengthz
--strengthstrongz--strongweakz-wz--weakurlz--urlmax_agez	--max-agescopesz-sz--scopesoutz--outlist_scopesz-xz--list-scopeslist_tokensz-lz--listremovez-rz--removecreatez-cz--createinfoz-iz--infoz--current-info
extra_argsrL   )rn   metavarr    N)	typerContextr   boolOptionr   r6   r   Argument)r"   s   "r#   r$   r$      s-    w" w"	w"tU\\$<<=w" 	
	w" 		
	w"( 	
	)w"6 	
	7w"D 	
	Ew"T 
	
	
Uw"b 	
	cw"p 	
	qw"@ 
	
	
Aw"N 	
	Ow"^ 	
	_w"n 	
	ow"~ 	
	w"N 		
	Ow"` cU^^4DDaw"f 
gw"r%   c                 R   V'       d<   \         P                  ! R \         R2RR7       \        P                  ! \
        R7      hT;'       g    . pV'       d   V^ ,          pMRp\        V P                  R/ 4      pVP                  V4      ;p'       d   VP                  VR,          VRV R	7       R# \        ;QJ d*    R
 VVVVVVVV	V
VVVVV3 4       F  '       g   K   RM	  RM! R
 VVVVVVVV	V
VVVVV3 4       4      pV'       g	   V'       dZ    ^ RIH	p \         P                  ! R4       \        P                  ! R\         4       T! \"        P$                  R,          RR7       R# \         P                  ! V P'                  4       4       R#   \        \        3 d     R# i ; i)zanaconda-auth, version [cyan]z[/cyan]
bold green)stylerK   Ncommands:   NNF)	prog_namestandalone_modeparentc              3   *   "   T F	  pVR Jx  K  	  R # 5ir@    ).0values   & r#   	<genexpr>main.<locals>.<genexpr>  s       
E 	T
s   T)mainz[yellow]DeprecationWarning[/yellow]: Please use [cyan]anaconda org auth[/cyan] instead for explicit management of anaconda.org auth tokens
zZPlease use `anaconda org auth` instead for explicit management of anaconda.org auth tokens)allow_plugin_main)r   r1   r   r~   ExitSUCCESSgetattrcommandrR   r   anybinstar_client.scripts.cliImportErrorModuleNotFoundErrorwarningswarnDeprecationWarningr-   argvget_help)rk   rl   rd   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   subcommand_namesubcommands_dictcmdhas_legacy_optionsbinstar_mains   &&&&&&&&&&&&&&&&&     r#   r   r      s   p +K=@	
 jjg&& !!rJ$Q- s{{J; ""?33s3rNouUX 	 	
 	  
  
 ( _	G 	 [	
 	h	

 	SXXb\U; MM#,,.! 01 		s   F F&%F&c                `    V ^8  d   QhR\         \        \        \        3,          ,          RR/# )r   
ssl_verifyr    N)r   r	   r   r6   )r"   s   "r#   r$   r$   H  s(     3
 3
(5s+;"< 3
 3
r%   c                P   \         P                  ! R4      pV'       g   R# ^ RIHp ^ RIHp ^ RIHp ^ RIHp \        V R7      pVf   R# \        V4      pV'       g   R# V! V4      '       g   \        P                  ! RR	R
7      pV'       g   R# \        P                  ! R4       V! V4      w  rV	'       g   \        P                  ! RV
 24       R# \        P                  ! \         R24       V! V4      '       d   R# V! V4      '       g   \        P                  ! R4       R# R# )zPost-login pipeline: fetch org features, check for environments,
install env-manager and register org if needed.

Skipped entirely when conda is not available on PATH.
condaN)install_env_manager)is_client_registered)is_env_manager_installed)register_orgr   zeAnaconda Environment Manager is required by your organization. It is recommended to install. Proceed?Tdefaultz"Installing anaconda-env-manager...zD[bold red]Error:[/bold red] Failed to install anaconda-env-manager.
z- anaconda-env-manager installed successfully.z
[bold yellow]Warning:[/bold yellow] Failed to register client token.
You can retry registration manually by running:
  [green]conda env-log register[/green])shutilwhich&anaconda_auth._conda.env_logger_configr   r   r   r   r   r   r   r0   r   r1   
CHECK_MARK)r   
conda_pathr   r   r   r   org_featuresenv_orgsinstallsuccessrJ   s   &          r#   _post_login_setupr   H  s     g&JJKOC%<L'5H#J//++s
 :;,Z8MMWX]W^_ $QRS J'' 
##6	
 $r%   r   c          	      .   V ^8  d   QhR\         \        \        P                  ! 4       3,          R\         \        \        ,          \        P                  ! R4      3,          R\         \        \
        ,          \        P                  ! 4       3,          RR/# )r   forcer   --ssl-verify/--no-ssl-verifyrY   r    N)r   r   r~   r   r   r6   )r"   s   "r#   r$   r$     so     #
 #
T5<<>)*#
%CDD#

 	(3-/0#
 
#
r%   c                n   \        V4        \        P                  ! 4       pVP                  pVP                  '       dB   \
        P                  ! RV 24       \        RVR7       \        P                  ! \        R7      h T ;'       g    \        P                  ! RV R2RR7      p V '       g   \        P                  ! \        R7      h \        WR7        \        VR	7       R#   \         d     L(i ; i  \         d2    \         P#                  R
RR7       \
        P                  ! R4        R# i ; i)Loginz'Your API key has expired, logging into T)r   r   r   z&You are already logged into Anaconda (z'). Would you like to force a new login?Fr   r   zPost-login setup failed)exc_infoz
[bold yellow]Warning:[/bold yellow] Post-login setup could not be completed.
You can configure environment management manually by running:
  [green]conda env-log register[/green]N)r_   r   loaddomainexpiredr   r1   r   r~   r   r   r   r0   r   r   r>   loggerdebug)r   r   rY   
token_infor   s   &&&  r#   
auth_loginr   ~  s    2+^^%
""MMCF8LM4**'**   
 
4VH<cd
 **'**  
-
Z0    
.>6	

s$   A4C' C8 'C54C588D43D4whoamird   c                ~    V ^8  d   QhR\         \        \        ,          \        P                  ! 4       3,          RR/# rX   r   r   r6   r~   r   )r"   s   "r#   r$   r$     s2     F F)HSM5<<>9: Fd Fr%   c                v    \        V 4       \        4       p\        P                  ! VP                  ^RR7       R# )z6Display information about the currently signed-in userT)dataindent	sort_keysN)r_   r   r   
print_jsonaccount)rY   clients   & r#   	auth_infor     s)     2\FFNN1Er%   zapi-keyc                ~    V ^8  d   QhR\         \        \        ,          \        P                  ! 4       3,          RR/# rX   r   )r"   s   "r#   r$   r$     s.     " "8C=%,,.89 "T "r%   c                    \        V 4       \        P                  ! 4       pVP                  '       g   \	        VP
                  4       R# \        4       h)z"Display API Key for signed-in userN)r_   r   r   r   r1   api_keyr   )rY   r   s   & r#   auth_keyr     s>     2!Jj  !!!r%   r   c                ~    V ^8  d   QhR\         \        \        ,          \        P                  ! 4       3,          RR/# rX   r   )r"   s   "r#   r$   r$     s.      IhsmU\\^;<  r%   c                0    \        V 4       \        4        R# )LogoutN)r_   r   r^   s   &r#   auth_logoutr     s     2
Hr%   sitesz'Manage your Anaconda site configurationlistc                    V ^8  d   QhRR/# )r   r    Nr   )r"   s   "r#   r$   r$     s      D r%   c                    \        4       p \        RRRRRR7      pV P                  P                  4        Fp  w  r#W P                  8X  d   \
        MRp \        P                  ! VP                  4      P                  pVe   \
        MRpVP                  W#P                  WF4       Kr  	  \        P                  ! V4       \        P                  ! R	4       R#   \         d    Rp Lii ; i)
z)List configured sites by name and domain.z	Site namezDomain namezDefault sitez	Logged inr   )header_stylerL   Nz_[dim italic]To view full site details use[/] [dim bold]anaconda sites show \[name or domain][/])r   r   r   itemsdefault_siter   r   r   r   r   r   add_rowr   r1   )sites_configtablerd   site
is_defaultr   is_logged_ins          r#   
sites_listr     s     +,L!E #((..0
#'+D+D#DZ"
	nnT[[199G &-%8zbdKKB 1 MM%MMj " 	G	s   *CC'&C'showc                :   V ^8  d   QhR\         \        \        ,          \        P                  ! RR7      3,          R\         \        \
        ,          \        P                  ! RRR7      3,          R\         \
        \        P                  ! RR7      3,          R	R
/# )r   r   zaChoose configured site name or domain name. If unspecified will show the configured default site.rf   allz--allzShow all site configurationsshow_hiddenzShow hidden fieldsr    N)r   r   r6   r~   r   r   r   )r"   s   "r#   r$   r$     s     -& -&
t	
	-& 
W3QRR
-& 43G!HHI-& 
-&r%   c                   0 RmpV'       d   RMTpV'       dr   \        4       pVP                  P                  P                  4        Uu/ uF   pVP                  VP                  VR7      bK"  	  pp\        P                  ! VR7       R# \         P                  ! V R7      pVP                  VR7      pRVP                  /VCp\        P                  ! VR7       R# u upi )z[Show the site configuration for the default site or look up by the provided name or domain.N)exclude)r   )r   r   >   r   keyring	client_idkeyring_pathredirect_urihash_hostnamelogin_error_pathlogin_success_pathopenid_config_pathenv_manager_channelenv_manager_packageenv_manager_versionauth_domain_overrideoidc_request_headerspreferred_token_storage)	r   r   rootvaluesr   
model_dumpr   r   	load_site)	r   r   r   rn   r   r   config	all_sitesr   s	   &&&      r#   
sites_showr    s    F$ "dvG
')  ++**113
3 KK**7*;;3 	 
 		*(22=   1,t,%
s   	&Cc                V    V ^8  d   QhR\         R\        \        ,          R\        RR/# )r   r   yespreserve_existing_keysr    N)r   r   r   )r"   s   "r#   r$   r$     s:     N N"N	$N !N 
	Nr%   c                     VR J d   V P                  VR7       R# VRJ d   V P                  R VR7       R# V P                  R VR7       \        P                  ! R4      '       d   V P                  VR7       R# R# )Tr  F)dry_runr  zConfirm:N)write_configr   r0   )r   r  r  s   &&&r#   _confirm_writer    sr    
 d{2HI	4@VW4@VW;;z""6LM #r%   c          ;      &
   V ^8  d   QhR\         P                  R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \         P
                  ! RR7      3,          R	\        \        \        ,          \         P
                  ! R
\        4        2R7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! R4      3,          R\        \        \        ,          \         P
                  ! R4      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! RR7      3,          R\        \        \        ,          \         P
                  ! R4      3,          R\        \        \        ,          \         P
                  ! RRR7      3,          R \        \        \        ,          \         P
                  ! R!R7      3,          R"\        \        \        ,          \         P
                  ! 4       3,          R#\        \        \        ,          \         P
                  ! 4       3,          R$\        \        \        ,          \         P
                  ! R%4      3,          R&\        \        \        ,          \         P
                  ! R'4      3,          R(\        \        \        ,          \         P
                  ! R)R7      3,          R*\        \        \        ,          \         P
                  ! R+R,R-R7      3,          R.R//# )0r   rk   r   z0Domain name for site, defaults to 'anaconda.com'r   rd   z1Name for site, defaults to domain if not suppliedr   zSet this site as defaultr   z4API key for site. CAUTION: this will get written to r   Trm   r   r   r   r   use_truststorez$--use-truststore/--no-use-truststoreextra_headersz4Extra headers in JSON format to use for all requestsr   r   r   r   r   r   use_unified_repo_api_keyz8--use-unified-repo-api-key/--no-use-unified-repo-api-keyr   z$--hash-host-name/--no-hash-host-nameproxy_serversz#JSON string of proxy server mappingclient_certclient_cert_keyuse_device_flowz&--use-device-flow/--no-use-device-flowdisable_conda_auto_configz:--disable-conda-auto-config/--no-disable-conda-auto-configremove_anaconda_comz/Remove the site named 'anaconda.com' if presentr  --yes/--dry-run-yzGConfirm changes and write, use --dry-run to print diff but do not writer    N)r~   r   r   r   r6   r   r   r   )r"   s   "r#   r$   r$   *  s    F F	FLM	OF MN	PF tU\\/IJJKF GH\H^G_`	
	F" 'x}ell$6O'OP#F$ $HSM5<<t3L$LM%F& x}ell$&??@'F( %CDD)F. %KLL/F4 PQ	S5F< #D(AAB=F> HSM5<<t+DDE?F@ "(3-T1J"JKAFB $HSM5<<t3L$LMCFD "(3-T1J"JKEFF  u||4/H HIGFH (OP	RIFP ;DI	KQFX u||)NOOYF^ 8C=%,,.89_F` x}elln<=aFb %MNNcFh  )QR	T iFp #KL	NqFx 
Z	
	
yFH 
IFr%   c                 
   / pVf   V	f   MjV'       g   Vf   V	'       d   RVR&   MPVRJ d:   V	'       d2   \         P                  ! R4       \        P                  ! \        R7      hVRJ d   RVR&   MRVR&   Ve   VVR&   Ve   VVR&   Ve*   R	\        4        R
2p\         P                  ! V4       VVR&   V
e    \        P                  ! V
4      pVVR&   Ve    \        P                  ! V4      pVVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   VeA   R\        4        R
2p\         P                  ! V4        \        P                  ! V4      pVVR&   Ve   VVR&   Ve   VVR&   Ve   VVR&   Ve    \        P                  ! V4      pVVR&   Ve   VVR &   Ve   VVR!&   Ve   VVR"&   \        4       p V P                  P                  R#8X  Ed   Vf2   \         P                  ! R$4       \        P                  ! \        R7      hVf   TpVV P                  9   d6   \         P                  ! R%V R&24       \        P                  ! \        R7      hV'       d3   R'V P                  P                  9   d   V P                  P                  R' \        R+/ VB p!V P!                  V!V!P"                  R(7       V'       g   \%        V P                  4      ^8X  d   V!P"                  V n        EMV P                  P                  R)8X  d   Vf6   Vf2   \         P                  ! R*4       \        P                  ! \        R7      hV P                  P)                  T;'       g    T4      p"V P                  P                  V",          p!/ V!P+                  4       CVCRV!P"                  /Cp#\        P,                  ! V#4      p!V P!                  V!V!P"                  R(7       V'       d   V!P"                  V n        \/        V V4       R #   \        P                   d7    \         P                  ! RT
 R24       \        P                  ! \        R7      hi ; i  \        P                   d7    \         P                  ! RT R24       \        P                  ! \        R7      hi ; i  \        P                   d3    \         P                  ! R4       \        P                  ! \        R7      hi ; i  \        P                   d3    \         P                  ! R4       \        P                  ! \        R7      hi ; i),N
truststorer   Fz4Cannot set both --use-truststore and --no-ssl-verifyr   Tr   r   zC[bold yellow]WARNING:[/bold yellow] Your API Key will be stored in z and may not be securer   r  zextra-headers=z could not be parsed as JSONr  zproxy-servers=r  r  r  r  r  r   r   zL[bold yellow]WARNING:[/bold yellow] Your Keyring contents will be stored in r   z0The keyring argument could not be parsed as JSONr   r   r   r   z=The oidc-request-headers argument could not be parsed as JSONr   r   r   addz5You must supply at least --domain to a add a new sitezA site with name z6 already exists, use the modify subcommand to alter itzanaconda.comr   modifyzCYou must supply at least one of --domain or --name to modify a siter   )r   r1   r~   r   ARGUMENT_ERRORr   rQ   loadsr   r   r   rd   r   PROGRAM_ERRORr   r   r  r   lenr   _find_atr  model_validater  )$rk   r   rd   r   r   r   r   r   r   r  r  r   r   r   r   r   r   r  r   r  r  r  r  r  r  r  kwargsmsgparsed_extra_headersparsed_proxy_serversparsed_keyringparsed_headersr   r  keydumps$   &&&&&&&&&&&&&&&&&&&&&&&&&&          r#   _sites_add_or_modifyr,  *  s   J  Fn4

*+|	u	LMjjn--	u	$|#|v!x..B.D-EE[] 	 	c#y 	2#'::m#< &:F?#  	2#'::m#< &:F?#  +}"$3 !"$3 !+-E)* ,.G*+*,C()')=%&77K7M6NNdf 	 	c	2!ZZ0N .F9 '{!-~%'9#$'	2!ZZ(<=N-;F)* %'9#$#%5!" "/#%E
{{5 >MMQR**.11<D5;;MM#D6)_` **-00>U[[5E5E#E  0!+F+		&v{{	+c%++&!+!'E			X	%>dlMMU **.11kk""4>>62!!#&E&##%EEE!006		&v{{	+!'E5#I ## 	2MMN=/9UVW**.11	2 ## 	2MMN=/9UVW**.11	24 ## 	2MMLM**.11	2 ## 	2MMO **.11		2s4   :P Q, R: T AQ),AR7:ATAUr  zAdd new site configuration to )rd   ri   rf   r  zModify site configuration in ry   )rd   ri   c                    V ^8  d   QhR\         \        \        P                  ! RR7      3,          R\         \        \
        ,          \        P                  ! RRRR7      3,          RR	/# )
r   r   z#Site name or domain name to remove.r   r  r  r  zFConfirm changes and write, use --dry-run to print diff but do no writer    N)r   r6   r~   r   r   r   r   )r"   s   "r#   r$   r$     s`      =  =
C-RSS
T =	Y	
	
 = 
 =r%   c                   \        4       p\        VP                  4      ^8X  d   V .\        VP                  4      8X  g:   V .VP                  P	                  4        Uu. uF  q3P
                  NK  	  up8X  d5   \        P                  ! V  R24       \        P                  ! \        R7      h VP                  V ,          pTP                  T 4       TP                  TP                  8X  d$   \!        \#        TP                  4      4      Tn        \%        Y!RR7       R# u upi   \         dH   p\        P                  ! TP                  ^ ,          4       \        P                  ! \        R7      hRp?ii ; i)z,Remove site configuration by name or domain.z2 is the only configured site and cannot be removedr   NFr
  )r   r!  r   r   r   r   r   r1   r~   r   r   r   argsry   r   r   nextiterr  )r   r  r   sr  r<   s   &&    r#   sites_remover3     s    $%E 	EKKAVtEKK((F););)=>)=Axx)=>>PQRjjm,,-T"
 
LLV[[(!$u{{"345e< ?  -affQi jjm,,-s   D.D$ $E6/AE11E6c                    V ^8  d   Qh/ ^ \         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   # )r   r   r  r   )__conditional_annotations__r!   )r"   s   "r#   r$   r$      sB    R  s S T   U V   W r%   r@   )FNNNNNNNNNNNNNNN)FNN)NFF)T)NNFNNNNNNNNNNNNNNNNNNNNTN)Sr5  rQ   loggingr\   r   r-   r   textwrapr   typingr   r   r   r   r   r	   r~   requests.exceptionsr
   r   rich.promptr   rich.syntaxr   
rich.tabler   anaconda_authr   anaconda_auth.actionsr   r   anaconda_auth.clientr   anaconda_auth.configr   r   anaconda_auth.env_loggerr   r   anaconda_auth.exceptionsr   r   anaconda_auth.tokenr   r   anaconda_cli_base.configr   anaconda_cli_base.consoler   anaconda_cli_base.exceptionsr   	getLoggerrB   r   r   r   r  r   r3   r9   rD   rG   rV   r_   Typerappcallbackr   r   r   r   r   r   r   	sites_appr   r  r  r,  	sites_addsites_modifyr3  r$   )r5  s   @r#   <module>rN     s     	  
          ) /    % ' ( + 1 8 7 = 6 4 ) 2 9 - ?			8	$.
   B *+" ,"
 )*" +" 	" #&1
 kk		.D $h-		   w"	w"t3
l W#
 #
L (F F )" " (  KK		2D $h-			   : -&  -&`NFR 	)*>*@)A	B   		   	()=)?(@	A !  	 $7 = 8 =r%   