ó
    Âu„jê	  ã                  ól   • S SK Jr  S SKrS SKrS SKJr  S SKJr  SSKJ	r	J
r
Jr  SS/rSSS	 jjrSS
 jrg)é    )ÚannotationsN)ÚAbstractContextManager)ÚTextIOé   )Ú
DummyInputÚInputÚ	PipeInputÚcreate_inputÚcreate_pipe_inputc                ó  • [         R                  S:X  aC  SSKJn  U c  [         R                  c
  [        5       $ U" U =(       d    [         R                  5      $ SSKJn  U cf  [         R                  n U(       aO  [         R                  [         R                  [         R                  4 H  nUR                  5       (       d  M  Un   O    U R                  5         U" U 5      $ ! [        R                   a    [        5       s $ f = f)a‹  
Create the appropriate `Input` object for the current os/environment.

:param always_prefer_tty: When set, if `sys.stdin` is connected to a Unix
    `pipe`, check whether `sys.stdout` or `sys.stderr` are connected to a
    pseudo terminal. If so, open the tty for reading instead of reading for
    `sys.stdin`. (We can open `stdout` or `stderr` for reading, this is how
    a `$PAGER` works.)
Úwin32r   )Ú
Win32Input)Ú
Vt100Input)ÚsysÚplatformr   r   Ústdinr   Úvt100r   ÚstdoutÚstderrÚisattyÚfilenoÚioÚUnsupportedOperation)r   Úalways_prefer_ttyr   r   Úobjs        Ú«C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\prompt_toolkit/input/defaults.pyr
   r
      s¿   € ô ‡|�|�wÓÝ%ð ‰=œSŸY™YÑ.Ü“<Ðá˜%×,¤3§9¡9Ó-Ð-å%ð ‰=Ü—I‘IˆEæ ÜŸI™I¤s§z¡z´3·:±:Ó>�CØ—z‘z—|“|Ø #˜Ùñ ?ð	 Ø�L‰LŒNñ ˜%Ó Ð øô ×&Ñ&ó 	 Ü“<Òð	 ús   ÃC  Ã DÄ Dc                 ó‚   • [         R                  S:X  a  SSKJn   U R	                  5       $ SSKJn  UR	                  5       $ )a!  
Create an input pipe.
This is mostly useful for unit testing.

Usage::

    with create_pipe_input() as input:
        input.send_text('inputdata')

Breaking change: In prompt_toolkit 3.0.28 and earlier, this was returning
the `PipeInput` directly, rather than through a context manager.
r   r   )ÚWin32PipeInput)ÚPosixPipeInput)r   r   Ú
win32_piper   ÚcreateÚ
posix_piper   )r   r   s     r   r   r   <   s4   € ô ‡|�|�wÓÝ.à×$Ñ$Ó&Ð&å.à×$Ñ$Ó&Ð&ó    )NF)r   zTextIO | Noner   ÚboolÚreturnr   )r%   z!AbstractContextManager[PipeInput])Ú
__future__r   r   r   Ú
contextlibr   Útypingr   Úbaser   r   r	   Ú__all__r
   r   © r#   r   Ú<module>r,      s4   ðÝ "ã 	Û 
Ý -Ý ç .Ñ .ð Øð€ö)!õX'r#   