
    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  ej	        d          Z
ddej        ej        dZ G d	 d
ej                  Zej        dd            ZdS )    )annotationsN)	Generator)color)output
pre_commit )DEBUGINFOWARNINGERRORc                  (     e Zd Zd	 fdZd
dZ xZS )LoggingHandler	use_colorboolreturnNonec                V    t                                                       || _        d S N)super__init__r   )selfr   	__class__s     j/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pre_commit/logging_handler.pyr   zLoggingHandler.__init__   s$    "    recordlogging.LogRecordc                    t          j        d|j         dt          |j                 | j                  }t          j        | d|                                            d S )N[] )r   format_color	levelnameLOG_LEVEL_COLORSr   r   
write_line
getMessage)r   r   	level_msgs      r   emitzLoggingHandler.emit   sh    &# ###V-.N
 
	
 	Y>>):):)<)<>>?????r   )r   r   r   r   )r   r   r   r   )__name__
__module____qualname__r   r'   __classcell__)r   s   @r   r   r      sY        # # # # # #@ @ @ @ @ @ @ @r   r   r   r   r   Generator[None]c              #     K   t          |           }t                              |           t                              t          j                   	 d V  t                              |           d S # t                              |           w xY wr   )r   logger
addHandlersetLevelloggingr
   removeHandler)r   handlers     r   logging_handlerr4   "   s}      Y''G
g
OOGL!!!&W%%%%%W%%%%s   A1 1B)r   r   r   r,   )
__future__r   
contextlibr1   collections.abcr   r   r   r   	getLoggerr.   YELLOWREDr#   Handlerr   contextmanagerr4    r   r   <module>r>      s    " " " " " "      % % % % % %            		<	(	( |Y	  @ @ @ @ @W_ @ @ @ & & & & & &r   