o
    Df                      @  sx   d dl mZ d dlZd dlmZmZ d dlmZmZm	Z	 ddl
mZmZ ddlmZ ddlmZ d	gZ	
dddd	ZdS )    )annotationsN)TextIOcast)get_bell_environment_variableget_term_environment_variableis_conemu_ansi   )DummyOutputOutput)
ColorDepth)PlainTextOutputcreate_outputFstdoutTextIO | Nonealways_prefer_ttyboolreturnr
   c                 C  s   t  }t }t }| du r(tj} |r(tjtjfD ]}|dur'| r'|}  nq| du r/t S ddl	m
} t| |rB| j} t| |s:tjdkryddlm} ddlm} ddlm}	m}
 |
 rgtt|	| |d	S t rstt|| |d	S || |d	S dd
lm} |  st| S |j| |||dS )aX  
    Return an :class:`~prompt_toolkit.output.Output` instance for the command
    line.

    :param stdout: The stdout object
    :param always_prefer_tty: When set, look for `sys.stderr` if `sys.stdout`
        is not a TTY. Useful if `sys.stdout` is redirected to a file, but we
        still want user input and output on the terminal.

        By default, this is `False`. If `sys.stdout` is not a terminal (maybe
        it's redirected to a file), then a `PlainTextOutput` will be returned.
        That way, tools like `print_formatted_text` will write plain text into
        that file.
    Nr   )StdoutProxywin32r   )ConEmuOutput)Win32Output)Windows10_Outputis_win_vt100_enabled)default_color_depth)Vt100_Output)termr   enable_bell)r   r   r   from_envsysr   stderrisattyr	   prompt_toolkit.patch_stdoutr   
isinstanceoriginal_stdoutplatformconemur   r   r   	windows10r   r   r   r
   r   vt100r   r   from_pty)r   r   term_from_envbell_from_envcolor_depth_from_envior   r   r   r   r   r    r-   W/home/ubuntu/webapp/venv/lib/python3.10/site-packages/prompt_toolkit/output/defaults.pyr      sP   



)NF)r   r   r   r   r   r
   )
__future__r   r   typingr   r   prompt_toolkit.utilsr   r   r   baser	   r
   color_depthr   
plain_textr   __all__r   r-   r-   r-   r.   <module>   s    