§
    
Á³g  ã            	       óÒ   — d Z ddlZddlZddlZddlmZ ddlmZmZm	Z	m
Z
 ddlmZ ddlmZmZ ddlmZ dd	„Zd
e	e         dedee         de
e         fd„Zdededee         fd„ZdS )zBLogic that powers autocompletion installed by ``pip completion``.
é    N)Úchain)ÚAnyÚIterableÚListÚOptional)Úcreate_main_parser)Úcommands_dictÚcreate_command)Úget_default_environmentÚreturnc                  ó\  ‡‡‡‡— dt           j        vrdS t           j        d                              ¦   «         dd…         Št          t           j        d         ¦  «        } 	 ‰| dz
           Šn# t          $ r dŠY nw xY wt          ¦   «         }t          t          ¦  «        }g }d}‰D ]
}||v r|} nŒ|��|dk    rt          j	        d¦  «         ‰ 
                    d¦  «         o|d	v }|rot          ¦   «         }‰                     ¦   «         Šˆˆfd
„|                     d¬¦  «        D ¦   «         }|r(|D ]}	t          |	¦  «         Œt          j	        d¦  «         ‰ 
                    d¦  «         o|dk    }
|
r6t          ‰d¦  «        D ]}t          |¦  «         Œt          j	        d¦  «         t!          |¦  «        }|j        j        D ]E}|j        t(          j        k    r.|j        |j        z   D ]}|                     ||j        f¦  «         ŒŒFd„ ‰d| dz
  …         D ¦   «         Šˆfd„|D ¦   «         }ˆfd„|D ¦   «         }t5          ‰| |j        j        ¦  «        }|rt          ‰|¦  «        }d„ |D ¦   «         }|D ]:}|d         }|d         r|d         dd…         dk    r|dz  }t          |¦  «         Œ;nßd„ |j        D ¦   «         }|                     |j        ¦  «         t;          j        |¦  «        }‰ 
                    d¦  «        r-|D ])}|j        t(          j        k    r||j        |j        z   z  }Œ*n0t5          ‰| |¦  «        }|rt          t          ‰|¦  «        ¦  «        }t          d                     ˆfd„|D ¦   «         ¦  «        ¦  «         t          j	        d¦  «         dS )z:Entry Point for completion of main and subcommand options.ÚPIP_AUTO_COMPLETENÚ
COMP_WORDSé   Ú
COMP_CWORDÚ Úhelpú-)ÚshowÚ	uninstallc                 ót   •— g | ]4}|j                              ‰¦  «        r|j         ‰d d…         v¯-|j         ‘Œ5S )r   N)Úcanonical_nameÚ
startswith)Ú.0ÚdistÚcwordsÚlcs     €€ú^/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_internal/cli/autocompletion.pyú
<listcomp>z autocomplete.<locals>.<listcomp>2   sY   ø€ ð ð ð àØÔ&×1Ò1°"Ñ5Ô5ðð Ô'¨v°a°b°b¬zÐ9Ð9ð Ô#ð :Ð9Ð9ó    T)Ú
local_onlyÚinstallÚpathc                 óD   — g | ]}|                      d ¦  «        d         ‘ŒS )ú=r   )Úsplit©r   Úxs     r   r   z autocomplete.<locals>.<listcomp>N   s&   € ÐDÐDÐD¨�Q—W’W˜S‘\”\ !”_ÐDÐDÐDr    c                 ó&   •— g | ]\  }}|‰v¯	||f‘ŒS © r*   )r   r(   ÚvÚ	prev_optss      €r   r   z autocomplete.<locals>.<listcomp>O   s+   ø€ ÐFÐFÐF™f˜q !°1¸IÐ3EÐ3E�A�q�6Ð3EÐ3EÐ3Er    c                 óH   •— g | ]\  }}|                      ‰¦  «        ¯||f‘ŒS r*   ©r   )r   Úkr+   Úcurrents      €r   r   z autocomplete.<locals>.<listcomp>Q   s2   ø€ ÐGÐGÐG™d˜a °·²¸gÑ1FÔ1FÐG�A�q�6ÐGÐGÐGr    c                 ó   — g | ]}|d f‘ŒS )r   r*   )r   r#   s     r   r   z autocomplete.<locals>.<listcomp>\   s   € Ð3Ð3Ð3 T˜˜a�yÐ3Ð3Ð3r    r   é   z--r%   c                 ó   — g | ]	}|j         ‘Œ
S r*   )Úoption_list)r   Úis     r   r   z autocomplete.<locals>.<listcomp>f   s   € Ð<Ð<Ð< !�”Ð<Ð<Ð<r    ú c                 ó>   •— g | ]}|                      ‰¦  «        ¯|‘ŒS r*   r.   )r   r(   r0   s     €r   r   z autocomplete.<locals>.<listcomp>s   s*   ø€ ÐHÐHÐH˜a°!·,²,¸wÑ2GÔ2GÐH˜ÐHÐHÐHr    ) ÚosÚenvironr&   ÚintÚ
IndexErrorr   Úlistr	   ÚsysÚexitr   r   ÚlowerÚiter_installed_distributionsÚprintÚauto_complete_pathsr
   ÚparserÚoption_list_allr   ÚoptparseÚSUPPRESS_HELPÚ
_long_optsÚ_short_optsÚappendÚnargsÚget_path_completion_typeÚoption_groupsr4   r   Úfrom_iterableÚjoin)ÚcwordrC   ÚsubcommandsÚoptionsÚsubcommand_nameÚwordÚshould_list_installedÚenvÚ	installedr   Úshould_list_installablesr#   Ú
subcommandÚoptÚopt_strÚcompletion_typeÚpathsÚoptionÚ	opt_labelÚoptsÚflattened_optsr0   r   r   r,   s                        @@@@r   Úautocompletera      sy  øøøø€ ð ¥"¤*Ð,Ð,ØˆÝŒZ˜Ô%×+Ò+Ñ-Ô-¨a¨b¨bÔ1€FÝ•”
˜<Ô(Ñ)Ô)€EðØ˜ ™Ô#ˆˆøÝð ð ð Øˆˆˆðøøøõ  Ñ!Ô!€FÝ•}Ñ%Ô%€KØ€Gð &*€OØð ð ˆØ�;ÐÐØ"ˆOØˆEð ð Ñ"à˜fÒ$Ð$ÝŒH�Q‰KŒKˆKà$+×$6Ò$6°sÑ$;Ô$;Ð ;ð !
Àð T
ð A
Ðð !ð 	Ý)Ñ+Ô+ˆCØ—’‘”ˆBðð ð ð ð à×<Ò<ÈÐ<ÑMÔMðñ ô ˆIð ð Ø%ð  ð  �DÝ˜$‘K”K�K�KÝ”˜‘”�ð ×"Ò" 3Ñ'Ô'Ð'ÐH¨O¸yÒ,Hð 	!ð $ð 	Ý+¨G°VÑ<Ô<ð ð �Ý�d‘”��ÝŒH�Q‰KŒKˆKå# OÑ4Ô4ˆ
àÔ$Ô4ð 	9ð 	9ˆCØŒx�8Ô1Ò1Ð1Ø"œ~°´Ñ?ð 9ð 9�GØ—N’N G¨S¬YÐ#7Ñ8Ô8Ð8Ð8øð EÐD¨f°Q¸À¹°]Ô.CÐDÑDÔDˆ	ØFÐFÐFÐF¨ÐFÑFÔFˆàGÐGÐGÐG gÐGÑGÔGˆå2ØØØÔÔ-ñ
ô 
ˆð ð 	4Ý'¨°ÑAÔAˆEØ3Ð3¨UÐ3Ñ3Ô3ˆGØð 	ð 	ˆFØ˜qœ	ˆIà�aŒyð !˜V AœY r¨ rœ]¨dÒ2Ð2Ø˜SÑ �	Ý�)ÑÔÐÐð	ð =Ð< vÔ';Ð<Ñ<Ô<ˆØ�Š�FÔ&Ñ'Ô'Ð'ÝÔ,¨TÑ2Ô2ˆØ×Ò˜cÑ"Ô"ð 	RØ%ð Dð D�Ø”8�xÔ5Ò5Ð5Ø 3¤>°C´OÑ#CÑC�KøðDõ
 7°v¸uÀnÑUÔUˆOØð RÝ"Õ#6°wÀÑ#PÔ#PÑQÔQ�åˆc�hŠhÐHÐHÐHÐH ;ÐHÑHÔHÑIÔIÑJÔJÐJÝ„HˆQ�K„K€K€K€Ks   Á!A- Á-A<Á;A<r   rO   r_   c                 ó¨  — |dk     s| |dz
                                 d¦  «        sdS |D ]¨}|j        t          j        k    rŒt	          |¦  «                             d¦  «        D ]m}| |dz
                                d¦  «        d         |k    rC|j        r1t          d„ |j                             d¦  «        D ¦   «         ¦  «        r|j        c c S ŒnŒ©dS )aL  Get the type of path completion (``file``, ``dir``, ``path`` or None)

    :param cwords: same as the environmental variable ``COMP_WORDS``
    :param cword: same as the environmental variable ``COMP_CWORD``
    :param opts: The available options to check
    :return: path completion type (``file``, ``dir``, ``path`` or None)
    r2   r   Nú/r%   r   c              3   ó   K  — | ]}|d v V — Œ	dS ))r#   ÚfileÚdirNr*   r'   s     r   ú	<genexpr>z+get_path_completion_type.<locals>.<genexpr>ˆ   s9   è è € ð *ð *Ø56�AÐ0Ð0ð*ð *ð *ð *ð *ð *r    )r   r   rE   rF   Ústrr&   ÚmetavarÚany)r   rO   r_   rY   Úos        r   rK   rK   w   s  € ð ˆq‚y€y˜˜u q™yÔ)×4Ò4°SÑ9Ô9€yØˆtØð 'ð 'ˆØŒ8•xÔ-Ò-Ð-ØÝ�S‘”—’ Ñ$Ô$ð 	'ð 	'ˆAØ�e˜a‘iÔ ×&Ò& sÑ+Ô+¨AÔ.°!Ò3Ð3Ø”{ð '¥cð *ð *Ø:=¼+×:KÒ:KÈCÑ:PÔ:Pð*ñ *ô *ñ 'ô 'ð 'ð œ;Ð&Ð&Ð&Ð&Ð&øð	'ð ˆ4r    r0   r[   c              #   óè  ‡K  — t           j                             | ¦  «        \  }Št           j                             |¦  «        }t          j        |t           j        ¦  «        sdS t           j                             ‰¦  «        Šˆfd„t          j        |¦  «        D ¦   «         }|D ]Ê}t           j                             ||¦  «        }t           j                             t           j                             ||¦  «        ¦  «        }|dk    r$t           j         	                    |¦  «        r|V — Œ‰t           j         
                    |¦  «        r"t           j                             |d¦  «        V — ŒËdS )at  If ``completion_type`` is ``file`` or ``path``, list all regular files
    and directories starting with ``current``; otherwise only list directories
    starting with ``current``.

    :param current: The word to be completed
    :param completion_type: path completion type(``file``, ``path`` or ``dir``)
    :return: A generator of regular files and/or directories
    Nc              3   ó€   •K  — | ]8}t           j                             |¦  «                             ‰¦  «        ¯4|V — Œ9d S )N)r8   r#   Únormcaser   )r   r(   Úfilenames     €r   rg   z&auto_complete_paths.<locals>.<genexpr>Ÿ   sZ   øè è € ð ð Ø­r¬w×/?Ò/?ÀÑ/BÔ/B×/MÒ/MÈhÑ/WÔ/WðØ	ðð ð ð ð ð r    rf   r   )r8   r#   r&   ÚabspathÚaccessÚR_OKrn   ÚlistdirrN   ÚisfileÚisdir)	r0   r[   Ú	directoryÚcurrent_pathÚ	file_listÚfrY   Ú	comp_filero   s	           @r   rB   rB   �   sI  øè è € õ œ'Ÿ-š-¨Ñ0Ô0Ñ€IˆxÝ”7—?’? 9Ñ-Ô-€LåŒ9�\¥2¤7Ñ+Ô+ð ØˆÝŒw×Ò Ñ)Ô)€Hðð ð ð Ý”:˜lÑ+Ô+ðñ ô €Ið ð 	.ð 	.ˆÝŒg�lŠl˜<¨Ñ+Ô+ˆÝ”G×$Ò$¥R¤W§\¢\°)¸QÑ%?Ô%?Ñ@Ô@ˆ	ð ˜eÒ#Ð#­¬¯ª°sÑ(;Ô(;Ð#ØˆOˆOˆOˆOÝŒW�]Š]˜3ÑÔð 	.Ý”'—,’,˜y¨"Ñ-Ô-Ð-Ð-Ð-øð	.ð 	.r    )r   N)Ú__doc__rE   r8   r=   Ú	itertoolsr   Útypingr   r   r   r   Úpip._internal.cli.main_parserr   Úpip._internal.commandsr	   r
   Úpip._internal.metadatar   ra   rh   r:   rK   rB   r*   r    r   ú<module>r�      s.  ððð ð €€€Ø 	€	€	€	Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0à <Ð <Ð <Ð <Ð <Ð <Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø :Ð :Ð :Ð :Ð :Ð :ðeð eð eð eðPØ�ŒIðØ!ðØ)1°#¬ðàˆc„]ðð ð ð ð0. ð .°sð .¸xÈ¼}ð .ð .ð .ð .ð .ð .r    