Ë
    ñEjé  ã                   ó@   — d Z ddlZddlZddlmZ ddlmZmZ defd„Z	y)zß
Unified getchar implementation for all platforms.

Combines approaches from:
- Textual (Unix/Linux): Copyright (c) 2023 Textualize Inc., MIT License
- Click (Windows fallback): Copyright 2014 Pallets, BSD-3-Clause License
é    N)Úgetincrementaldecoder)ÚOptionalÚTextIOÚreturnc                  óê  — t         j                  dk(  r·	 ddl} | j                  } |«       }|dv r| |«       z  }|S |g}d}t        |«      |k  r[| j                  «       rK |«       }|dv rn?|j                  |«       |dk(  r
t        «       ‚t        |«      |k  r| j                  «       rŒKdj                  |«      }d|v r
t        «       ‚|S ddl}ddl}d}	t         j                  j                  «       st        d	«      }	|	j!                  «       }
nt         j                  j!                  «       }
	 |j#                  |
«      }	 |j#                  |
«      }||j$                  xx   |j&                  |j(                  z  |j*                  z  |j,                  z   z  cc<   ||j.                  xx   |j0                  |j2                  z  |j4                  z  |j6                  z  |j8                  z   z  cc<   d||j:                     |j<                  <   |j?                  |
|j@                  |«       tC        j
                  |
d«      } tE        d
«      «       }|jG                  |d¬«      }d|v r
t        «       ‚||j?                  |
|j@                  |«       t         jH                  jK                  «        |	�|	jM                  «        S S # t        $ r" t         j                  j                  d«      cY S w xY w# |j?                  |
|j@                  |«       t         jH                  jK                  «        |	�|	jM                  «        w w xY w# |jN                  $ r" t         j                  j                  d«      cY S w xY w)a.  
    Read input from stdin with support for longer pasted text.

    On Windows:
    - Uses msvcrt for native Windows console input
    - Handles special keys that send two-byte sequences
    - Reads up to 4096 characters for paste support

    On Unix/Linux:
    - Uses Textual's approach with manual termios configuration
    - Reads up to 4096 bytes with proper UTF-8 decoding
    - Provides fine-grained terminal control

    Returns:
        str: The input character(s) read from stdin

    Raises:
        KeyboardInterrupt: When CTRL+C is pressed
    Úwin32r   Né   )ú õ   Ã i   úÚ z/dev/ttyzutf-8T)Úfinal)(ÚsysÚplatformÚmsvcrtÚImportErrorÚstdinÚreadÚgetwchÚlenÚkbhitÚappendÚKeyboardInterruptÚjoinÚtermiosÚttyÚisattyÚopenÚfilenoÚ	tcgetattrÚLFLAGÚECHOÚICANONÚIEXTENÚISIGÚIFLAGÚIXONÚIXOFFÚICRNLÚINLCRÚIGNCRÚCCÚVMINÚ	tcsetattrÚTCSANOWÚosr   ÚdecodeÚstdoutÚflushÚcloseÚerror)r   ÚfuncÚrvÚcharsÚ	max_charsÚ	next_charÚresultr   r   ÚfÚfdÚattrs_beforeÚnewattrÚraw_dataÚdecoders                  úX/var/www/html/peoplehubportal/venv/lib/python3.12/site-packages/rich_toolkit/_getchar.pyÚgetcharrC      s  € ô( ‡|�|�wÒð	%Ûð �}‰}ˆñ ‹Vˆð Ð!Ñ!à‘$“&‰LˆBØˆIð �ˆØˆ	ô �%‹j˜9Ò$¨¯©¬Ù›ˆIð Ð,Ñ,àà�L‰L˜Ô#ð ˜FÒ"Ü'Ó)Ð)ô �%‹j˜9Ò$¨¯©­ð —‘˜“ˆð �VÑÜ#Ó%Ð%àˆó 	Ûà"ˆô �y‰y×ÑÔ!Ü�ZÓ ˆAØ—‘“‰Bä—‘×!Ñ!Ó#ˆBð<	%à"×,Ñ,¨RÓ0ˆLð4à!×+Ñ+¨BÓ/�ð ˜Ÿ	™	Ó"Ø—L‘L 7§>¡>Ñ1°G·N±NÑBÀWÇ\Á\ÑQð'ñ Ó"ð ˜Ÿ	™	Ó"Ø—L‘LØ—m‘mñ$à—m‘mñ$ð —m‘mñ$ð —m‘mñ	$ð'ñ Ó"ð 12�˜Ÿ™‘ §¡Ñ-ð ×!Ñ! " g§o¡o°wÔ?ô Ÿ7™7 2 xÓ0�ð 9Ô/°Ó8Ó:�Ø Ÿ™¨¸˜Ó=�ð ˜VÑ#Ü+Ó-Ð-àð ×!Ñ! " g§o¡o°|ÔDÜ—
‘
× Ñ Ô"à�=Ø—G‘G•Ið !øôc ò 	%ä—9‘9—>‘> !Ó$Ò$ð	%ûð\ ×!Ñ! " g§o¡o°|ÔDÜ—
‘
× Ñ Ô"à�=Ø—G‘G•Ið !ûð �}‰}ò 	%ä—9‘9—>‘> !Ó$Ò$ð	%ús>   •K  Ä.M Å D1K. É1AM Ë (K+Ë*K+Ë.AL>Ì>M Í.M2Í1M2)
Ú__doc__r0   r   Úcodecsr   Útypingr   r   ÚstrrC   © ó    rB   ú<module>rJ      s&   ðñó 
Û 
Ý (ß #ðN%�ô N%rI   