o
    ê}”e©  ã                   @   s¸   d dl Zd dlmZ ejrd dlZddlmZ eƒ Z	ej
ddd
d„ƒZej
ddedejd	 fdd„ƒZddedejd	 fdd„Zddd„Zddd„Zddeje deje fdd„ZdS )é    N)Úlocalé   )ÚContextFÚsilentúte.Literal[False]Úreturnr   c                 C   ó   d S ©N© ©r   r
   r
   úV/Users/abhinavbhinder/Documents/map/venv/lib/python3.10/site-packages/click/globals.pyÚget_current_context   ó   r   .c                 C   r   r	   r
   r   r
   r
   r   r      r   c              
   C   sN   z
t  dtjd ¡W S  ttfy& } z| stdƒ|‚W Y d}~dS d}~ww )a‚  Returns the current click context.  This can be used as a way to
    access the current context object from anywhere.  This is a more implicit
    alternative to the :func:`pass_context` decorator.  This function is
    primarily useful for helpers such as :func:`echo` which might be
    interested in changing its behavior based on the current context.

    To push the current context, :meth:`Context.scope` can be used.

    .. versionadded:: 5.0

    :param silent: if set to `True` the return value is `None` if no context
                   is available.  The default behavior is to raise a
                   :exc:`RuntimeError`.
    r   éÿÿÿÿz!There is no active click context.N)ÚtÚcastÚ_localÚstackÚAttributeErrorÚ
IndexErrorÚRuntimeError)r   Úer
   r
   r   r      s   

ÿ€üÚctxc                 C   s   t j dg ¡ | ¡ dS )z*Pushes a new context to the current stack.r   N)r   Ú__dict__Ú
setdefaultÚappend)r   r
   r
   r   Úpush_context-   s   r   c                   C   s   t j ¡  dS )z%Removes the top level from the stack.N)r   r   Úpopr
   r
   r
   r   Úpop_context2   s   r   Úcolorc                 C   s(   | dur| S t dd�}|dur|jS dS )zªInternal helper to get the default value of the color flag.  If a
    value is passed it's returned unchanged, otherwise it's looked up from
    the current context.
    NTr   )r   r   )r   r   r
   r
   r   Úresolve_color_default7   s   
r    )F)r   r   r   r   ).)r   r   r   N)r   Nr	   )Útypingr   Ú	threadingr   ÚTYPE_CHECKINGZtyping_extensionsÚteÚcorer   r   Úoverloadr   ÚboolÚOptionalr   r   r    r
   r
   r
   r   Ú<module>   s    

$