ó
    Ñ]j  ã                  ón  • S SK Jr  S SKrS SKrS SKrS SKrS SKJr  S SKJr  S SK	J
r  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  S SKJr  S SKJr  S SKJr  S SKJr  Sr\R8                  r\R<                  " SS9SS j5       rSS jr \RB                  SS j5       r"SS jr#        SS jr$g)é    )ÚannotationsN)Ú	Generator)ÚSequence)Ú	lang_base)Ú
envcontext)ÚPatchesT)ÚUNSET)ÚVar)Úbin_dir)ÚPrefix)Ú
cmd_output)Úcmd_output_b)ÚrmtreeÚnode_envé   )Úmaxsizec                 óš   • [         R                  S:X  a  [        R                  $ [	        S S 5       5      (       a  g[        R                  $ )NÚwin32c              3  óN   #   • U  H  n[         R                  " U5      v •  M     g 7f©N)r   Ú
exe_exists)Ú.0Úexes     ÚV/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pre_commit/languages/node.pyÚ	<genexpr>Ú&get_default_version.<locals>.<genexpr>!   s   é € ÐB²/¨3ŒY×!Ò! #×&Ð&²/ùs   ‚#%)ÚnodeÚnpmÚsystem)ÚsysÚplatformÚCÚDEFAULTÚall© ó    r   Úget_default_versionr'      s:   € ô ‡|�|�wÓÜ�y‰yÐô 
ÑB±/ÓB×	BÑ	BØä�y‰yÐr&   c                ó‚  • [         R                  S:X  a&  [        SSU 5      u  pnUR                  5        S3nSnO&[         R                  S:X  a  [	        U 5      nSnOU nSnSU 4S	U4S
U4S[
        4S[
        4S[        R                  R                  XS5      4S[	        U 5      [        R                  [        S5      444$ )NÚcygwinÚcygpathz-wz\binÚlibr   ÚScriptsÚNODE_VIRTUAL_ENVÚNPM_CONFIG_PREFIXÚnpm_config_prefixÚNPM_CONFIG_USERCONFIGÚnpm_config_userconfigÚ	NODE_PATHÚnode_modulesÚPATH)r    r!   r   Ústripr   r	   ÚosÚpathÚjoinÚpathsepr
   )ÚvenvÚ_Úwin_venvÚinstall_prefixÚlib_dirs        r   Úget_env_patchr?   '   sÁ   € Ü
‡|�|�xÓÜ# I¨t°TÓ:‰ˆ�QØ%Ÿ^™^Ó-Ð.¨dÐ3ˆØ‰Ü	�‰˜Ó	 Ü  ›ˆØ‰àˆØˆà	˜TÐ"Ø	˜nÐ-Ø	˜nÐ-Ø	 ¤%Ð(Ø	 ¤%Ð(Ø	”b—g‘g—l‘l 4°.ÓAÐBØ	”'˜$“-¤§¡¬S°«[Ð9Ð:ðð r&   c              #  ó¨   #   • [         R                  " U [        U5      n[        [	        U5      5         S v •  S S S 5        g ! , (       d  f       g = f7fr   )r   Úenvironment_dirÚENVIRONMENT_DIRr   r?   )ÚprefixÚversionÚenvdirs      r   Úin_envrF   =   s4   é € ä×&Ò& v¬ÀÓH€FÜ	”M &Ó)Õ	*Û÷ 
+×	*Ö	*üs   ‚1A³A¸	AÁ
AÁAc                ó–   • [        X5         [        SSSS9u  n  nUS:w  a  SU 3sS S S 5        $  S S S 5        g ! , (       d  f       g = f)Nr   z	--versionF)Úcheckr   z`node --version` returned )rF   r   )rC   rD   Úretcoder;   s       r   Úhealth_checkrJ   D   sH   € Ü	�Õ	 Ü$ V¨[ÀÑF‰ˆ��AØ�a‹<Ø/°¨yÐ9÷ 
!Ñ	 ð
 ÷ 
!×	 Ö	 ús   Œ:°:º
Ac                ó  • U R                  S5      (       d   e[        R                  " U [        U5      n[        R
                  S:X  a"  S[        R                  R                  U5       3n[        R                  SSSU/nU[        R                  :w  a  UR                  SU/5        [        U6   [        X5         Sn[        R                  " X5        [!        S	S
U R"                  S9u  pgnU R                  UR%                  5       5      nS	SSU/UQ7n[        R                  " X5        U R                  S5      (       a  ['        U R                  S5      5        [        R(                  " U5        S S S 5        g ! , (       d  f       g = f)Nzpackage.jsonr   z\\?\z	-mnodeenvz
--prebuiltz--clean-srcz-n)r   Úinstallz--include=devz--include=prodz--ignore-prepublishz--no-progressz	--no-saver   Úpack)ÚcwdrL   z-gr3   )Úexistsr   rA   rB   r    r!   r6   r7   ÚnormpathÚ
executabler"   r#   Úextendr   rF   Ú	setup_cmdr   Ú
prefix_dirr5   r   Úremove)	rC   rD   Úadditional_dependenciesrE   ÚcmdÚlocal_install_cmdr;   ÚpkgrL   s	            r   Úinstall_environmentrZ   M   s6  € ð �=‰=˜×(Ñ(Ð(Ð(Ü×&Ò& v¬ÀÓH€Fô ‡|�|�wÓØœŸ™×)Ñ)¨&Ó1Ð2Ð3ˆÜ�>‰>˜;¨°mÀVÐ
L€CØ”!—)‘)ÓØ�
‰
�D˜'�?Ô#Ü�#Ñä	�Õ	 ð
Ðô 	×Ò˜FÔ6ä˜u f°&×2CÑ2CÑD‰	ˆ�Ø�k‰k˜#Ÿ)™)›+Ó&ˆà˜) T¨3ÐIÐ1HÑIˆÜ×Ò˜FÔ,ð �=‰=˜×(Ñ(Ü�6—;‘;˜~Ó.Ô/Ü
�	Š	�#Œ÷' 
!×	 Ö	 ús   Â:B5E8Å8
F)ÚreturnÚstr)r:   r\   r[   r   )rC   r   rD   r\   r[   zGenerator[None])rC   r   rD   r\   r[   z
str | None)rC   r   rD   r\   rV   zSequence[str]r[   ÚNone)%Ú
__future__r   Ú
contextlibÚ	functoolsr6   r    Úcollections.abcr   r   Úpre_commit.constantsÚ	constantsr"   Ú
pre_commitr   Úpre_commit.envcontextr   r   r	   r
   Úpre_commit.languages.pythonr   Úpre_commit.prefixr   Úpre_commit.utilr   r   r   rB   Úbasic_run_hookÚrun_hookÚ	lru_cacher'   r?   ÚcontextmanagerrF   rJ   rZ   r%   r&   r   Ú<module>rm      s³   ðÝ "ã Û Û 	Û 
Ý %Ý $å  Ý  Ý ,Ý *Ý 'Ý %Ý /Ý $Ý &Ý (Ý "à€Ø×#Ñ#€ð ×Ò˜QÑó	ó  ð	ôð, ×Ñóó ðôð!Øð!Ø!$ð!Ø?Lð!à	õ!r&   