
    dh                         d dl mZ d dlmZ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mZ d dlmZ d	ed
e
defdZd	ed
edefdZded
eddfdZy)    )jsonable_encoder)RequestValidationErrorWebSocketRequestValidationError)is_body_allowed_for_status_code)	WebSocket)HTTPException)Request)JSONResponseResponse)WS_1008_POLICY_VIOLATIONrequestexcreturnc                    K   t        |dd       }t        |j                        st        |j                  |      S t	        d|j
                  i|j                  |      S w)Nheaders)status_coder   detail)getattrr   r   r   r
   r   )r   r   r   s      M/var/www/zara/venv/lib/python3.12/site-packages/fastapi/exception_handlers.pyhttp_exception_handlerr      sR     c9d+G*3??;COOWEE	3::COOW s   AA c                 V   K   t        ddt        |j                               i      S w)Ni  r   )r   content)r
   r   errors)r   r   s     r   $request_validation_exception_handlerr      s,      +CJJL9: s   ')	websocketNc                 |   K   | j                  t        t        |j                                      d {    y 7 w)N)codereason)closer   r   r   )r   r   s     r   .websocket_request_validation_exception_handlerr       s4      //%.>szz|.L    s   2<:<)fastapi.encodersr   fastapi.exceptionsr   r   fastapi.utilsr   fastapi.websocketsr   starlette.exceptionsr   starlette.requestsr	   starlette.responsesr
   r   starlette.statusr   r   r   r         r   <module>r+      sq    - V 9 ( . & 6 5'  ( 1>	r*   