
    9Cg4                         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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dS )    )jsonable_encoder)RequestValidationErrorWebSocketRequestValidationError)is_body_allowed_for_status_code)	WebSocket)HTTPException)Request)JSONResponseResponse)HTTP_422_UNPROCESSABLE_ENTITYWS_1008_POLICY_VIOLATIONrequestexcreturnc                    K   t          |dd           }t          |j                  st          |j        |          S t	          d|j        i|j        |          S )Nheaders)status_coder   detail)getattrr   r   r   r
   r   )r   r   r   s      L/var/www/api/venv/lib/python3.11/site-packages/fastapi/exception_handlers.pyhttp_exception_handlerr      sf      c9d++G*3?;; FCOWEEEE	3:COW       c                 t   K   t          t          dt          |                                          i          S )Nr   )r   content)r
   r   r   errors)r   r   s     r   $request_validation_exception_handlerr      s;       1+CJJLL99:   r   	websocketNc                    K   |                      t          t          |                                                     d {V  d S )N)codereason)closer   r   r   )r   r   s     r   .websocket_request_validation_exception_handlerr"      sa       //%.>szz||.L.L            r   )fastapi.encodersr   fastapi.exceptionsr   r   fastapi.utilsr   fastapi.websocketsr   starlette.exceptionsr   starlette.requestsr	   starlette.responsesr
   r   starlette.statusr   r   r   r   r"    r   r   <module>r,      s2   - - - - - - V V V V V V V V 9 9 9 9 9 9 ( ( ( ( ( ( . . . . . . & & & & & & 6 6 6 6 6 6 6 6 T T T T T T T T'  (    1   >	     r   