
    wi~                        d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dl
mZ d dl
mZ d dl
mZ d d	lmZ d d
lmZ dZe	j        Ze	j        Ze	j        ZddZej        dd            ZddZdS )    )annotationsN)	Generator)Sequence)	lang_base)
envcontext)PatchesT)Var)
FatalError)Prefixhs_env
target_dirstrreturnr   c                    t           j                            | d          }d|t           j        t	          d          fffS )NbinPATH)ospathjoinpathsepr	   )r   bin_paths     l/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pre_commit/languages/haskell.pyget_env_patchr      s4    w||J..Hh
CKK89;;    prefixr   versionGenerator[None]c              #     K   t          j        | t          |          }t          t	          |                    5  d V  d d d            d S # 1 swxY w Y   d S )N)r   environment_dirENVIRONMENT_DIRr   r   )r   r   envdirs      r   in_envr"      s      &vHHF	M&))	*	*                   s   AAAadditional_dependenciesSequence[str]Nonec           	        t          j        d|           t          j        | t          |          }g |                     d          |}|st          d          t          j                            |d          }t          j	        |d           t          j
        | d           t          j
        | dd	d
dd|g|R            d S )Nhaskellz.cabalz0Expected .cabal files or additional_dependenciesr   T)exist_ok)cabalupdater)   installz--install-methodcopyz--installdir)r   assert_version_defaultr   r    starr
   r   r   r   makedirs	setup_cmd)r   r   r#   r!   pkgsbindirs         r   install_environmentr3   !   s    
 $Y888&vHHF=V[[""=%<=D MKLLLW\\&%((FK&&&& 3444YF	
 		
 	
    r   )r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r#   r$   r   r%   )
__future__r   
contextlibos.pathr   collections.abcr   r   
pre_commitr   pre_commit.envcontextr   r   r	   pre_commit.errorsr
   pre_commit.prefixr   r    basic_get_default_versionget_default_versionbasic_health_checkhealth_checkbasic_run_hookrun_hookr   contextmanagerr"   r3    r   r   <module>rD      s0   " " " " " "      % % % % % % $ $ $ $ $ $             , , , , , , * * * * * * % % % % % % ( ( ( ( ( ( $ $ $ $ $ $9 +#< < < <
         r   