ó
    ¬<BhÚ
  ã                  ó  • S r SSKJr  SSKrSSKrSSKJr  SSKJr  \(       a  SSK	J
r
  SSKJr  SS	KJrJr  \(       a  SS
KJr  SSKJrJr  \R(                  " \5      r\SSS jj5       rSSS jjrSS jrSS jrSSS jjrSSS jjrg)z/
Holds functions for output rendering in conda
é    )ÚannotationsN)Úcache)ÚTYPE_CHECKING)ÚAbstractContextManageré   )Úcontext)ÚCondaSystemExitÚ
DryRunExit)ÚCallable)ÚProgressBarBaseÚSpinnerBasec                óä   • [         R                  n[         R                  R                  U5      nUR	                  5       nU b!  [        X0S5      nUc  [        SU  S35      e U$ [        US5      nU$ )z&
Retrieves the render function to use
NÚ'z'' is not a valid reporter backend styleÚrender)r   ÚconsoleÚplugin_managerÚget_reporter_backendÚrendererÚgetattrÚAttributeError)ÚstyleÚbackendÚreporterr   Úrender_funcs        Ú/lib/python3.13/site-packages/conda/reporters.pyÚ_get_render_funcr      s   € ô
 o‰o€GÜ×%Ñ%×:Ñ:¸7ÓC€Hà× Ñ Ó"€HàÑÜ˜h¨tÓ4ˆØÑÜ  1 U GÐ+RÐ!SÓTÐTð ð
 Ðô ˜h¨Ó1ˆàÐó    c                ój   • [        U5      nU" U 40 UD6n[        R                  R                  U5        g)zÔ
Used to render output in conda

The output will either be rendered as "json" or normal "console" output to stdout.
This function allows us to configure different reporter backends for these two types
of output.
N)r   ÚsysÚstdoutÚwrite)Údatar   Úkwargsr   Údata_strs        r   r   r   0   s/   € ô # 5Ó)€KÙ˜4Ñ* 6Ñ*€HÜ‡JJ×ÑXÕr   c                ó&   • [        S5      " U 40 UD6$ )zI
Retrieve the progress bar for the currently configured reporter backend
Úprogress_bar©r   )Údescriptionr#   s     r   Úget_progress_barr)   =   s   € ô ˜NÔ+¨KÑB¸6ÑBÐBr   c                 ó"   • [        S5      " 5       $ )zG
Retrieve progress bar context manager to use with registered reporter
Úprogress_bar_context_managerr'   © r   r   Ú get_progress_bar_context_managerr-   D   s   € ô Ð:Ô;Ó=Ð=r   c                ó$   • [        S5      " X5      $ )z2
Retrieve spinner to use with registered reporter
Úspinnerr'   )ÚmessageÚfail_messages     r   Úget_spinnerr2   K   s   € ô ˜IÔ& wÓ=Ð=r   c                óú   • Uc  [         R                  (       d  U(       a
  [        5       e[         R                  (       a  g [	        S5      " U SUS9nUS:X  a  [        S5      eg! [
         a    [        S5      ef = f)z'
Display a "yes/no" confirmation input
TÚprompt)ÚyesÚno)ÚchoicesÚdefaultz
Operation aborted.  Exiting.r6   zExiting.)r   Údry_runr
   Ú
always_yesr   ÚKeyboardInterruptr	   )r0   r8   r9   Úchoices       r   Ú
confirm_ynr=   R   sw   € ð 	‰œGŸOŸO¶Ü‹lÐä××Øð@Ü! (Ô+Ø˜]°Gñ
ˆð ƒ~Ü˜jÓ)Ð)àøô ó @ÜÐ>Ó?Ð?ð@ús   ÁA$ Á$A:)N)r   ú
str | NoneÚreturnr   )r   r>   r?   ÚNone)r(   Ústrr?   r   )r?   r   )zfailed
)r0   rA   r1   rA   r?   r   )ÚProceedr5   N)r0   rA   r?   Úbool)Ú__doc__Ú
__future__r   Úloggingr   Ú	functoolsr   Útypingr   Ú
contextlibr   Úbase.contextr   Ú
exceptionsr	   r
   r   Úplugins.typesr   r   Ú	getLoggerÚ__name__Úloggerr   r   r)   r-   r2   r=   r,   r   r   Ú<module>rP      sn   ðñõ #ã Û 
Ý Ý  æÝ1å !ß 3æÝç;à	×	Ò	˜8Ó	$€ð õó ðö&
ôCô>ö>÷r   